﻿using CozeDomain.Entities;
using CozeDto.ConversationDtos;
using D.UtilCore.Dtos;
using D.UtilFreesqlOrm;

namespace CozeDomain.IServices
{
    /// <summary>
    /// 对话历史
    /// </summary>
    public interface IConversationService : IBaseService<ConversationEntity>
    {
        /// <summary>
        /// 添加
        /// </summary>
        /// <param name="reqAddConversation"></param>
        /// <returns></returns>
        Task<ApiResult<int>> AddConversationAsync(ReqAddConversation reqAddConversation);

        /// <summary>
        /// 删除
        /// </summary>
        /// <param name="ids"></param>
        /// <returns></returns>
        Task<ApiResult<int>> DeleteConversationAsync(List<string> ids);

        /// <summary>
        /// 查询列表
        /// </summary>
        /// <param name="userId"></param>
        /// <returns></returns>
        Task<ApiResult<List<RepConversationInfo>>> QueryConversationListAsync(string userId);
          
        /// <summary>
        /// 分页查询
        /// </summary>
        /// <param name="reqQueryConversationPage"></param>
        /// <returns></returns>
        Task<ApiResult<PageModel<RepConversationInfo>>> QueryConversationPagesAsync(ReqQueryConversationPage reqQueryConversationPage);
    }
}
